1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 package com.sun.tools.example.debug.expr;
28
29 import com.sun.jdi.*;
30
31 import java.util.Stack;
32 import java.util.List;
33 import java.util.ArrayList;
34
35 public class ExpressionParser implements ExpressionParserConstants {
36
37 Stack<LValue> stack = new Stack<LValue>();
38 VirtualMachine vm = null;
39 GetFrame frameGetter = null;
40 private static GetFrame lastFrameGetter;
41 private static LValue lastLValue;
42
43 LValue peek() {
44 return stack.peek();
45 }
46
47 LValue pop() {
48 return stack.pop();
49 }
50
51 void push(LValue lval) {
52 stack.push(lval);
53 }
54
55 public static Value getMassagedValue() throws ParseException {
56 return lastLValue.getMassagedValue(lastFrameGetter);
57 }
58
59 public interface GetFrame {
60 StackFrame get() throws IncompatibleThreadStateException;
61 }
62
63 public static Value evaluate(String expr, VirtualMachine vm,
64 GetFrame frameGetter) throws ParseException, InvocationException,
65 InvalidTypeException, ClassNotLoadedException,
66 IncompatibleThreadStateException {
67
68 java.io.InputStream in = new java.io.StringBufferInputStream(expr);
69 ExpressionParser parser = new ExpressionParser(in);
70 parser.vm = vm;
71 parser.frameGetter = frameGetter;
72 parser.Expression();
73 lastFrameGetter = frameGetter;
74 lastLValue = parser.pop();
75 return lastLValue.getValue();
76 }
77
78 public static void main(String args[]) {
79 ExpressionParser parser;
80 System.out.print("Java Expression Parser: ");
81 if (args.length == 0) {
82 System.out.println("Reading from standard input . . .");
83 parser = new ExpressionParser(System.in);
84 } else if (args.length == 1) {
85 System.out.println("Reading from file " + args[0] + " . . .");
86 try {
87 parser = new ExpressionParser(new java.io.FileInputStream(args[0]));
88 } catch (java.io.FileNotFoundException e) {
89 System.out.println("Java Parser Version 1.0.2: File " + args[0]
90 + " not found.");
91 return;
92 }
93 } else {
94 System.out.println("Usage is one of:");
95 System.out.println(" java ExpressionParser < inputfile");
96 System.out.println("OR");
97 System.out.println(" java ExpressionParser inputfile");
98 return;
99 }
100 try {
101 parser.Expression();
102 System.out.print("Java Expression Parser: ");
103 System.out.println("Java program parsed successfully.");
104 } catch (ParseException e) {
105 System.out.print("Java Expression Parser: ");
106 System.out.println("Encountered errors during parse.");
107 }
108 }
109
110
111
112
113
114
115
116
117 final public void Type() throws ParseException {
118 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
119 case BOOLEAN:
120 case BYTE:
121 case CHAR:
122 case DOUBLE:
123 case FLOAT:
124 case INT:
125 case LONG:
126 case SHORT:
127 PrimitiveType();
128 break;
129 case IDENTIFIER:
130 Name();
131 break;
132 default:
133 jj_la1[0] = jj_gen;
134 jj_consume_token(-1);
135 throw new ParseException();
136 }
137 label_1: while (true) {
138 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
139 case LBRACKET:
140 ;
141 break;
142 default:
143 jj_la1[1] = jj_gen;
144 break label_1;
145 }
146 jj_consume_token(LBRACKET);
147 jj_consume_token(RBRACKET);
148 }
149 }
150
151 final public void PrimitiveType() throws ParseException {
152 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
153 case BOOLEAN:
154 jj_consume_token(BOOLEAN);
155 break;
156 case CHAR:
157 jj_consume_token(CHAR);
158 break;
159 case BYTE:
160 jj_consume_token(BYTE);
161 break;
162 case SHORT:
163 jj_consume_token(SHORT);
164 break;
165 case INT:
166 jj_consume_token(INT);
167 break;
168 case LONG:
169 jj_consume_token(LONG);
170 break;
171 case FLOAT:
172 jj_consume_token(FLOAT);
173 break;
174 case DOUBLE:
175 jj_consume_token(DOUBLE);
176 break;
177 default:
178 jj_la1[2] = jj_gen;
179 jj_consume_token(-1);
180 throw new ParseException();
181 }
182 }
183
184 final public String Name() throws ParseException {
185 StringBuffer sb = new StringBuffer();
186 jj_consume_token(IDENTIFIER);
187 sb.append(token);
188 label_2: while (true) {
189 if (jj_2_1(2)) {
190 ;
191 } else {
192 break label_2;
193 }
194 jj_consume_token(DOT);
195 jj_consume_token(IDENTIFIER);
196 sb.append('.');
197 sb.append(token);
198 }
199 if (true) {
200 return sb.toString();
201 }
202 throw new Error("Missing return statement in function");
203 }
204
205 final public void NameList() throws ParseException {
206 Name();
207 label_3: while (true) {
208 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
209 case COMMA:
210 ;
211 break;
212 default:
213 jj_la1[3] = jj_gen;
214 break label_3;
215 }
216 jj_consume_token(COMMA);
217 Name();
218 }
219 }
220
221
222
223
224 final public void Expression() throws ParseException {
225 if (jj_2_2(2147483647)) {
226 Assignment();
227 } else {
228 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
229 case FALSE:
230 case NEW:
231 case NULL:
232 case SUPER:
233 case THIS:
234 case TRUE:
235 case INTEGER_LITERAL:
236 case FLOATING_POINT_LITERAL:
237 case CHARACTER_LITERAL:
238 case STRING_LITERAL:
239 case IDENTIFIER:
240 case LPAREN:
241 case BANG:
242 case TILDE:
243 case INCR:
244 case DECR:
245 case PLUS:
246 case MINUS:
247 ConditionalExpression();
248 break;
249 default:
250 jj_la1[4] = jj_gen;
251 jj_consume_token(-1);
252 throw new ParseException();
253 }
254 }
255 }
256
257 final public void Assignment() throws ParseException {
258 PrimaryExpression();
259 AssignmentOperator();
260 Expression();
261 LValue exprVal = pop();
262 pop().setValue(exprVal);
263 push(exprVal);
264 }
265
266 final public void AssignmentOperator() throws ParseException {
267 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
268 case ASSIGN:
269 jj_consume_token(ASSIGN);
270 break;
271 case STARASSIGN:
272 jj_consume_token(STARASSIGN);
273 break;
274 case SLASHASSIGN:
275 jj_consume_token(SLASHASSIGN);
276 break;
277 case REMASSIGN:
278 jj_consume_token(REMASSIGN);
279 break;
280 case PLUSASSIGN:
281 jj_consume_token(PLUSASSIGN);
282 break;
283 case MINUSASSIGN:
284 jj_consume_token(MINUSASSIGN);
285 break;
286 case LSHIFTASSIGN:
287 jj_consume_token(LSHIFTASSIGN);
288 break;
289 case RSIGNEDSHIFTASSIGN:
290 jj_consume_token(RSIGNEDSHIFTASSIGN);
291 break;
292 case RUNSIGNEDSHIFTASSIGN:
293 jj_consume_token(RUNSIGNEDSHIFTASSIGN);
294 break;
295 case ANDASSIGN:
296 jj_consume_token(ANDASSIGN);
297 break;
298 case XORASSIGN:
299 jj_consume_token(XORASSIGN);
300 break;
301 case ORASSIGN:
302 jj_consume_token(ORASSIGN);
303 break;
304 default:
305 jj_la1[5] = jj_gen;
306 jj_consume_token(-1);
307 throw new ParseException();
308 }
309 }
310
311 final public void ConditionalExpression() throws ParseException {
312 ConditionalOrExpression();
313 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
314 case HOOK:
315 jj_consume_token(HOOK);
316 Expression();
317 jj_consume_token(COLON);
318 ConditionalExpression();
319 LValue falseBranch = pop();
320 LValue trueBranch = pop();
321 Value cond = pop().interiorGetValue();
322 if (cond instanceof BooleanValue) {
323 push(((BooleanValue) cond).booleanValue() ? trueBranch
324 : falseBranch);
325 } else {
326 {
327 if (true) {
328 throw new ParseException("Condition must be boolean");
329 }
330 }
331 }
332 break;
333 default:
334 jj_la1[6] = jj_gen;
335 ;
336 }
337 }
338
339 final public void ConditionalOrExpression() throws ParseException {
340 ConditionalAndExpression();
341 label_4: while (true) {
342 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
343 case SC_OR:
344 ;
345 break;
346 default:
347 jj_la1[7] = jj_gen;
348 break label_4;
349 }
350 jj_consume_token(SC_OR);
351 ConditionalAndExpression();
352 {
353 if (true) {
354 throw new ParseException("operation not yet supported");
355 }
356 }
357 }
358 }
359
360 final public void ConditionalAndExpression() throws ParseException {
361 InclusiveOrExpression();
362 label_5: while (true) {
363 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
364 case SC_AND:
365 ;
366 break;
367 default:
368 jj_la1[8] = jj_gen;
369 break label_5;
370 }
371 jj_consume_token(SC_AND);
372 InclusiveOrExpression();
373 {
374 if (true) {
375 throw new ParseException("operation not yet supported");
376 }
377 }
378 }
379 }
380
381 final public void InclusiveOrExpression() throws ParseException {
382 ExclusiveOrExpression();
383 label_6: while (true) {
384 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
385 case BIT_OR:
386 ;
387 break;
388 default:
389 jj_la1[9] = jj_gen;
390 break label_6;
391 }
392 jj_consume_token(BIT_OR);
393 ExclusiveOrExpression();
394 {
395 if (true) {
396 throw new ParseException("operation not yet supported");
397 }
398 }
399 }
400 }
401
402 final public void ExclusiveOrExpression() throws ParseException {
403 AndExpression();
404 label_7: while (true) {
405 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
406 case XOR:
407 ;
408 break;
409 default:
410 jj_la1[10] = jj_gen;
411 break label_7;
412 }
413 jj_consume_token(XOR);
414 AndExpression();
415 {
416 if (true) {
417 throw new ParseException("operation not yet supported");
418 }
419 }
420 }
421 }
422
423 final public void AndExpression() throws ParseException {
424 EqualityExpression();
425 label_8: while (true) {
426 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
427 case BIT_AND:
428 ;
429 break;
430 default:
431 jj_la1[11] = jj_gen;
432 break label_8;
433 }
434 jj_consume_token(BIT_AND);
435 EqualityExpression();
436 {
437 if (true) {
438 throw new ParseException("operation not yet supported");
439 }
440 }
441 }
442 }
443
444 final public void EqualityExpression() throws ParseException {
445 Token tok;
446 InstanceOfExpression();
447 label_9: while (true) {
448 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
449 case EQ:
450 case NE:
451 ;
452 break;
453 default:
454 jj_la1[12] = jj_gen;
455 break label_9;
456 }
457 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
458 case EQ:
459 tok = jj_consume_token(EQ);
460 break;
461 case NE:
462 tok = jj_consume_token(NE);
463 break;
464 default:
465 jj_la1[13] = jj_gen;
466 jj_consume_token(-1);
467 throw new ParseException();
468 }
469 InstanceOfExpression();
470 LValue left = pop();
471 push( LValue.booleanOperation(vm, tok, pop(), left) );
472 }
473 }
474
475 final public void InstanceOfExpression() throws ParseException {
476 RelationalExpression();
477 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
478 case INSTANCEOF:
479 jj_consume_token(INSTANCEOF);
480 Type();
481 {
482 if (true) {
483 throw new ParseException("operation not yet supported");
484 }
485 }
486 break;
487 default:
488 jj_la1[14] = jj_gen;
489 ;
490 }
491 }
492
493 final public void RelationalExpression() throws ParseException {
494 Token tok;
495 ShiftExpression();
496 label_10: while (true) {
497 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
498 case GT:
499 case LT:
500 case LE:
501 case GE:
502 ;
503 break;
504 default:
505 jj_la1[15] = jj_gen;
506 break label_10;
507 }
508 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
509 case LT:
510 tok = jj_consume_token(LT);
511 break;
512 case GT:
513 tok = jj_consume_token(GT);
514 break;
515 case LE:
516 tok = jj_consume_token(LE);
517 break;
518 case GE:
519 tok = jj_consume_token(GE);
520 break;
521 default:
522 jj_la1[16] = jj_gen;
523 jj_consume_token(-1);
524 throw new ParseException();
525 }
526 ShiftExpression();
527 LValue left = pop();
528 push( LValue.booleanOperation(vm, tok, pop(), left) );
529 }
530 }
531
532 final public void ShiftExpression() throws ParseException {
533 AdditiveExpression();
534 label_11: while (true) {
535 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
536 case LSHIFT:
537 case RSIGNEDSHIFT:
538 case RUNSIGNEDSHIFT:
539 ;
540 break;
541 default:
542 jj_la1[17] = jj_gen;
543 break label_11;
544 }
545 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
546 case LSHIFT:
547 jj_consume_token(LSHIFT);
548 break;
549 case RSIGNEDSHIFT:
550 jj_consume_token(RSIGNEDSHIFT);
551 break;
552 case RUNSIGNEDSHIFT:
553 jj_consume_token(RUNSIGNEDSHIFT);
554 break;
555 default:
556 jj_la1[18] = jj_gen;
557 jj_consume_token(-1);
558 throw new ParseException();
559 }
560 AdditiveExpression();
561 {
562 if (true) {
563 throw new ParseException("operation not yet supported");
564 }
565 }
566 }
567 }
568
569 final public void AdditiveExpression() throws ParseException {
570 Token tok;
571 MultiplicativeExpression();
572 label_12: while (true) {
573 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
574 case PLUS:
575 case MINUS:
576 ;
577 break;
578 default:
579 jj_la1[19] = jj_gen;
580 break label_12;
581 }
582 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
583 case PLUS:
584 tok = jj_consume_token(PLUS);
585 break;
586 case MINUS:
587 tok = jj_consume_token(MINUS);
588 break;
589 default:
590 jj_la1[20] = jj_gen;
591 jj_consume_token(-1);
592 throw new ParseException();
593 }
594 MultiplicativeExpression();
595 LValue left = pop();
596 push( LValue.operation(vm, tok, pop(), left, frameGetter) );
597 }
598 }
599
600 final public void MultiplicativeExpression() throws ParseException {
601 Token tok;
602 UnaryExpression();
603 label_13: while (true) {
604 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
605 case STAR:
606 case SLASH:
607 case REM:
608 ;
609 break;
610 default:
611 jj_la1[21] = jj_gen;
612 break label_13;
613 }
614 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
615 case STAR:
616 tok = jj_consume_token(STAR);
617 break;
618 case SLASH:
619 tok = jj_consume_token(SLASH);
620 break;
621 case REM:
622 tok = jj_consume_token(REM);
623 break;
624 default:
625 jj_la1[22] = jj_gen;
626 jj_consume_token(-1);
627 throw new ParseException();
628 }
629 UnaryExpression();
630 LValue left = pop();
631 push( LValue.operation(vm, tok, pop(), left, frameGetter) );
632 }
633 }
634
635 final public void UnaryExpression() throws ParseException {
636 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
637 case PLUS:
638 case MINUS:
639 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
640 case PLUS:
641 jj_consume_token(PLUS);
642 break;
643 case MINUS:
644 jj_consume_token(MINUS);
645 break;
646 default:
647 jj_la1[23] = jj_gen;
648 jj_consume_token(-1);
649 throw new ParseException();
650 }
651 UnaryExpression();
652 {
653 if (true) {
654 throw new ParseException("operation not yet supported");
655 }
656 }
657 break;
658 case INCR:
659 PreIncrementExpression();
660 break;
661 case DECR:
662 PreDecrementExpression();
663 break;
664 case FALSE:
665 case NEW:
666 case NULL:
667 case SUPER:
668 case THIS:
669 case TRUE:
670 case INTEGER_LITERAL:
671 case FLOATING_POINT_LITERAL:
672 case CHARACTER_LITERAL:
673 case STRING_LITERAL:
674 case IDENTIFIER:
675 case LPAREN:
676 case BANG:
677 case TILDE:
678 UnaryExpressionNotPlusMinus();
679 break;
680 default:
681 jj_la1[24] = jj_gen;
682 jj_consume_token(-1);
683 throw new ParseException();
684 }
685 }
686
687 final public void PreIncrementExpression() throws ParseException {
688 jj_consume_token(INCR);
689 PrimaryExpression();
690 {
691 if (true) {
692 throw new ParseException("operation not yet supported");
693 }
694 }
695 }
696
697 final public void PreDecrementExpression() throws ParseException {
698 jj_consume_token(DECR);
699 PrimaryExpression();
700 {
701 if (true) {
702 throw new ParseException("operation not yet supported");
703 }
704 }
705 }
706
707 final public void UnaryExpressionNotPlusMinus() throws ParseException {
708 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
709 case BANG:
710 case TILDE:
711 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
712 case TILDE:
713 jj_consume_token(TILDE);
714 break;
715 case BANG:
716 jj_consume_token(BANG);
717 break;
718 default:
719 jj_la1[25] = jj_gen;
720 jj_consume_token(-1);
721 throw new ParseException();
722 }
723 UnaryExpression();
724 {
725 if (true) {
726 throw new ParseException("operation not yet supported");
727 }
728 }
729 break;
730 default:
731 jj_la1[26] = jj_gen;
732 if (jj_2_3(2147483647)) {
733 CastExpression();
734 } else {
735 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
736 case FALSE:
737 case NEW:
738 case NULL:
739 case SUPER:
740 case THIS:
741 case TRUE:
742 case INTEGER_LITERAL:
743 case FLOATING_POINT_LITERAL:
744 case CHARACTER_LITERAL:
745 case STRING_LITERAL:
746 case IDENTIFIER:
747 case LPAREN:
748 PostfixExpression();
749 break;
750 default:
751 jj_la1[27] = jj_gen;
752 jj_consume_token(-1);
753 throw new ParseException();
754 }
755 }
756 }
757 }
758
759
760
761
762
763
764 final public void CastLookahead() throws ParseException {
765 if (jj_2_4(2)) {
766 jj_consume_token(LPAREN);
767 PrimitiveType();
768 } else if (jj_2_5(2147483647)) {
769 jj_consume_token(LPAREN);
770 Name();
771 jj_consume_token(LBRACKET);
772 jj_consume_token(RBRACKET);
773 } else {
774 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
775 case LPAREN:
776 jj_consume_token(LPAREN);
777 Name();
778 jj_consume_token(RPAREN);
779 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
780 case TILDE:
781 jj_consume_token(TILDE);
782 break;
783 case BANG:
784 jj_consume_token(BANG);
785 break;
786 case LPAREN:
787 jj_consume_token(LPAREN);
788 break;
789 case IDENTIFIER:
790 jj_consume_token(IDENTIFIER);
791 break;
792 case THIS:
793 jj_consume_token(THIS);
794 break;
795 case SUPER:
796 jj_consume_token(SUPER);
797 break;
798 case NEW:
799 jj_consume_token(NEW);
800 break;
801 case FALSE:
802 case NULL:
803 case TRUE:
804 case INTEGER_LITERAL:
805 case FLOATING_POINT_LITERAL:
806 case CHARACTER_LITERAL:
807 case STRING_LITERAL:
808 Literal();
809 break;
810 default:
811 jj_la1[28] = jj_gen;
812 jj_consume_token(-1);
813 throw new ParseException();
814 }
815 break;
816 default:
817 jj_la1[29] = jj_gen;
818 jj_consume_token(-1);
819 throw new ParseException();
820 }
821 }
822 }
823
824 final public void PostfixExpression() throws ParseException {
825 PrimaryExpression();
826 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
827 case INCR:
828 case DECR:
829 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
830 case INCR:
831 jj_consume_token(INCR);
832 break;
833 case DECR:
834 jj_consume_token(DECR);
835 {
836 if (true) {
837 throw new ParseException("operation not yet supported");
838 }
839 }
840 break;
841 default:
842 jj_la1[30] = jj_gen;
843 jj_consume_token(-1);
844 throw new ParseException();
845 }
846 break;
847 default:
848 jj_la1[31] = jj_gen;
849 ;
850 }
851 }
852
853 final public void CastExpression() throws ParseException {
854 if (jj_2_6(2)) {
855 jj_consume_token(LPAREN);
856 PrimitiveType();
857 label_14: while (true) {
858 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
859 case LBRACKET:
860 ;
861 break;
862 default:
863 jj_la1[32] = jj_gen;
864 break label_14;
865 }
866 jj_consume_token(LBRACKET);
867 jj_consume_token(RBRACKET);
868 }
869 jj_consume_token(RPAREN);
870 UnaryExpression();
871 } else {
872 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
873 case LPAREN:
874 jj_consume_token(LPAREN);
875 Name();
876 label_15: while (true) {
877 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
878 case LBRACKET:
879 ;
880 break;
881 default:
882 jj_la1[33] = jj_gen;
883 break label_15;
884 }
885 jj_consume_token(LBRACKET);
886 jj_consume_token(RBRACKET);
887 }
888 jj_consume_token(RPAREN);
889 UnaryExpressionNotPlusMinus();
890 break;
891 default:
892 jj_la1[34] = jj_gen;
893 jj_consume_token(-1);
894 throw new ParseException();
895 }
896 }
897 }
898
899 final public void PrimaryExpression() throws ParseException {
900 PrimaryPrefix();
901 label_16: while (true) {
902 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
903 case LPAREN:
904 case LBRACKET:
905 case DOT:
906 ;
907 break;
908 default:
909 jj_la1[35] = jj_gen;
910 break label_16;
911 }
912 PrimarySuffix();
913 }
914 }
915
916 final public void PrimaryPrefix() throws ParseException {
917 String name;
918 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
919 case FALSE:
920 case NULL:
921 case TRUE:
922 case INTEGER_LITERAL:
923 case FLOATING_POINT_LITERAL:
924 case CHARACTER_LITERAL:
925 case STRING_LITERAL:
926 Literal();
927 break;
928 case IDENTIFIER:
929 name = Name();
930 push(LValue.makeName(vm, frameGetter, name));
931 break;
932 case THIS:
933 jj_consume_token(THIS);
934 push(LValue.makeThisObject(vm, frameGetter, token));
935 break;
936 case SUPER:
937 jj_consume_token(SUPER);
938 jj_consume_token(DOT);
939 jj_consume_token(IDENTIFIER);
940 {
941 if (true) {
942 throw new ParseException("operation not yet supported");
943 }
944 }
945 break;
946 case LPAREN:
947 jj_consume_token(LPAREN);
948 Expression();
949 jj_consume_token(RPAREN);
950 break;
951 case NEW:
952 AllocationExpression();
953 break;
954 default:
955 jj_la1[36] = jj_gen;
956 jj_consume_token(-1);
957 throw new ParseException();
958 }
959 }
960
961 final public void PrimarySuffix() throws ParseException {
962 List<Value> argList;
963 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
964 case LBRACKET:
965 jj_consume_token(LBRACKET);
966 Expression();
967 jj_consume_token(RBRACKET);
968 LValue index = pop();
969 push(pop().arrayElementLValue(index));
970 break;
971 case DOT:
972 jj_consume_token(DOT);
973 jj_consume_token(IDENTIFIER);
974 push(pop().memberLValue(frameGetter, token.image));
975 break;
976 case LPAREN:
977 argList = Arguments();
978 peek().invokeWith(argList);
979 break;
980 default:
981 jj_la1[37] = jj_gen;
982 jj_consume_token(-1);
983 throw new ParseException();
984 }
985 }
986
987 final public void Literal() throws ParseException {
988 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
989 case INTEGER_LITERAL:
990 jj_consume_token(INTEGER_LITERAL);
991 push(LValue.makeInteger(vm, token));
992 break;
993 case FLOATING_POINT_LITERAL:
994 jj_consume_token(FLOATING_POINT_LITERAL);
995 push(LValue.makeFloat(vm, token));
996 break;
997 case CHARACTER_LITERAL:
998 jj_consume_token(CHARACTER_LITERAL);
999 push(LValue.makeCharacter(vm, token));
1000 break;
1001 case STRING_LITERAL:
1002 jj_consume_token(STRING_LITERAL);
1003 push(LValue.makeString(vm, token));
1004 break;
1005 case FALSE:
1006 case TRUE:
1007 BooleanLiteral();
1008 push(LValue.makeBoolean(vm, token));
1009 break;
1010 case NULL:
1011 NullLiteral();
1012 push(LValue.makeNull(vm, token));
1013 break;
1014 default:
1015 jj_la1[38] = jj_gen;
1016 jj_consume_token(-1);
1017 throw new ParseException();
1018 }
1019 }
1020
1021 final public void BooleanLiteral() throws ParseException {
1022 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1023 case TRUE:
1024 jj_consume_token(TRUE);
1025 break;
1026 case FALSE:
1027 jj_consume_token(FALSE);
1028 break;
1029 default:
1030 jj_la1[39] = jj_gen;
1031 jj_consume_token(-1);
1032 throw new ParseException();
1033 }
1034 }
1035
1036 final public void NullLiteral() throws ParseException {
1037 jj_consume_token(NULL);
1038 }
1039
1040 final public List<Value> Arguments() throws ParseException {
1041 List<Value> argList = new ArrayList<Value>();
1042 jj_consume_token(LPAREN);
1043 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1044 case FALSE:
1045 case NEW:
1046 case NULL:
1047 case SUPER:
1048 case THIS:
1049 case TRUE:
1050 case INTEGER_LITERAL:
1051 case FLOATING_POINT_LITERAL:
1052 case CHARACTER_LITERAL:
1053 case STRING_LITERAL:
1054 case IDENTIFIER:
1055 case LPAREN:
1056 case BANG:
1057 case TILDE:
1058 case INCR:
1059 case DECR:
1060 case PLUS:
1061 case MINUS:
1062 ArgumentList(argList);
1063 break;
1064 default:
1065 jj_la1[40] = jj_gen;
1066 ;
1067 }
1068 jj_consume_token(RPAREN);
1069 {
1070 if (true) {
1071 return argList;
1072 }
1073 }
1074 throw new Error("Missing return statement in function");
1075 }
1076
1077 final public void ArgumentList(List<Value> argList) throws ParseException {
1078 Expression();
1079 argList.add(pop().interiorGetValue());
1080 label_17: while (true) {
1081 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1082 case COMMA:
1083 ;
1084 break;
1085 default:
1086 jj_la1[41] = jj_gen;
1087 break label_17;
1088 }
1089 jj_consume_token(COMMA);
1090 Expression();
1091 argList.add(pop().interiorGetValue());
1092 }
1093 }
1094
1095 final public void AllocationExpression() throws ParseException {
1096 List<Value> argList;
1097 String className;
1098 if (jj_2_7(2)) {
1099 jj_consume_token(NEW);
1100 PrimitiveType();
1101 ArrayDimensions();
1102 } else {
1103 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1104 case NEW:
1105 jj_consume_token(NEW);
1106 className = Name();
1107 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1108 case LPAREN:
1109 argList = Arguments();
1110 push(LValue.makeNewObject(vm, frameGetter, className, argList));
1111 break;
1112 case LBRACKET:
1113 ArrayDimensions();
1114 {
1115 if (true) {
1116 throw new ParseException("operation not yet supported");
1117 }
1118 }
1119 break;
1120 default:
1121 jj_la1[42] = jj_gen;
1122 jj_consume_token(-1);
1123 throw new ParseException();
1124 }
1125 break;
1126 default:
1127 jj_la1[43] = jj_gen;
1128 jj_consume_token(-1);
1129 throw new ParseException();
1130 }
1131 }
1132 }
1133
1134
1135
1136
1137
1138 final public void ArrayDimensions() throws ParseException {
1139 label_18: while (true) {
1140 jj_consume_token(LBRACKET);
1141 Expression();
1142 jj_consume_token(RBRACKET);
1143 if (jj_2_8(2)) {
1144 ;
1145 } else {
1146 break label_18;
1147 }
1148 }
1149 label_19: while (true) {
1150 if (jj_2_9(2)) {
1151 ;
1152 } else {
1153 break label_19;
1154 }
1155 jj_consume_token(LBRACKET);
1156 jj_consume_token(RBRACKET);
1157 }
1158 }
1159
1160 final private boolean jj_2_1(int xla) {
1161 jj_la = xla;
1162 jj_lastpos = jj_scanpos = token;
1163 boolean retval = !jj_3_1();
1164 jj_save(0, xla);
1165 return retval;
1166 }
1167
1168 final private boolean jj_2_2(int xla) {
1169 jj_la = xla;
1170 jj_lastpos = jj_scanpos = token;
1171 boolean retval = !jj_3_2();
1172 jj_save(1, xla);
1173 return retval;
1174 }
1175
1176 final private boolean jj_2_3(int xla) {
1177 jj_la = xla;
1178 jj_lastpos = jj_scanpos = token;
1179 boolean retval = !jj_3_3();
1180 jj_save(2, xla);
1181 return retval;
1182 }
1183
1184 final private boolean jj_2_4(int xla) {
1185 jj_la = xla;
1186 jj_lastpos = jj_scanpos = token;
1187 boolean retval = !jj_3_4();
1188 jj_save(3, xla);
1189 return retval;
1190 }
1191
1192 final private boolean jj_2_5(int xla) {
1193 jj_la = xla;
1194 jj_lastpos = jj_scanpos = token;
1195 boolean retval = !jj_3_5();
1196 jj_save(4, xla);
1197 return retval;
1198 }
1199
1200 final private boolean jj_2_6(int xla) {
1201 jj_la = xla;
1202 jj_lastpos = jj_scanpos = token;
1203 boolean retval = !jj_3_6();
1204 jj_save(5, xla);
1205 return retval;
1206 }
1207
1208 final private boolean jj_2_7(int xla) {
1209 jj_la = xla;
1210 jj_lastpos = jj_scanpos = token;
1211 boolean retval = !jj_3_7();
1212 jj_save(6, xla);
1213 return retval;
1214 }
1215
1216 final private boolean jj_2_8(int xla) {
1217 jj_la = xla;
1218 jj_lastpos = jj_scanpos = token;
1219 boolean retval = !jj_3_8();
1220 jj_save(7, xla);
1221 return retval;
1222 }
1223
1224 final private boolean jj_2_9(int xla) {
1225 jj_la = xla;
1226 jj_lastpos = jj_scanpos = token;
1227 boolean retval = !jj_3_9();
1228 jj_save(8, xla);
1229 return retval;
1230 }
1231
1232 final private boolean jj_3R_154() {
1233 if (jj_scan_token(INCR)) {
1234 return true;
1235 }
1236 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1237 return false;
1238 }
1239 return false;
1240 }
1241
1242 final private boolean jj_3R_151() {
1243 Token xsp;
1244 xsp = jj_scanpos;
1245 if (jj_3R_154()) {
1246 jj_scanpos = xsp;
1247 if (jj_3R_155()) {
1248 return true;
1249 }
1250 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1251 return false;
1252 }
1253 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1254 return false;
1255 }
1256 return false;
1257 }
1258
1259 final private boolean jj_3R_148() {
1260 Token xsp;
1261 xsp = jj_scanpos;
1262 if (jj_3_6()) {
1263 jj_scanpos = xsp;
1264 if (jj_3R_150()) {
1265 return true;
1266 }
1267 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1268 return false;
1269 }
1270 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1271 return false;
1272 }
1273 return false;
1274 }
1275
1276 final private boolean jj_3_6() {
1277 if (jj_scan_token(LPAREN)) {
1278 return true;
1279 }
1280 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1281 return false;
1282 }
1283 if (jj_3R_23()) {
1284 return true;
1285 }
1286 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1287 return false;
1288 }
1289 Token xsp;
1290 while (true) {
1291 xsp = jj_scanpos;
1292 if (jj_3R_152()) {
1293 jj_scanpos = xsp;
1294 break;
1295 }
1296 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1297 return false;
1298 }
1299 }
1300 if (jj_scan_token(RPAREN)) {
1301 return true;
1302 }
1303 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1304 return false;
1305 }
1306 if (jj_3R_115()) {
1307 return true;
1308 }
1309 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1310 return false;
1311 }
1312 return false;
1313 }
1314
1315 final private boolean jj_3R_25() {
1316 Token xsp;
1317 xsp = jj_scanpos;
1318 if (jj_3R_50()) {
1319 jj_scanpos = xsp;
1320 if (jj_3R_51()) {
1321 return true;
1322 }
1323 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1324 return false;
1325 }
1326 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1327 return false;
1328 }
1329 return false;
1330 }
1331
1332 final private boolean jj_3R_50() {
1333 if (jj_3R_67()) {
1334 return true;
1335 }
1336 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1337 return false;
1338 }
1339 return false;
1340 }
1341
1342 final private boolean jj_3_5() {
1343 if (jj_scan_token(LPAREN)) {
1344 return true;
1345 }
1346 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1347 return false;
1348 }
1349 if (jj_3R_24()) {
1350 return true;
1351 }
1352 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1353 return false;
1354 }
1355 if (jj_scan_token(LBRACKET)) {
1356 return true;
1357 }
1358 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1359 return false;
1360 }
1361 return false;
1362 }
1363
1364 final private boolean jj_3R_149() {
1365 if (jj_3R_20()) {
1366 return true;
1367 }
1368 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1369 return false;
1370 }
1371 Token xsp;
1372 xsp = jj_scanpos;
1373 if (jj_3R_151()) {
1374 jj_scanpos = xsp;
1375 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1376 return false;
1377 }
1378 return false;
1379 }
1380
1381 final private boolean jj_3R_41() {
1382 if (jj_scan_token(LPAREN)) {
1383 return true;
1384 }
1385 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1386 return false;
1387 }
1388 if (jj_3R_24()) {
1389 return true;
1390 }
1391 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1392 return false;
1393 }
1394 if (jj_scan_token(RPAREN)) {
1395 return true;
1396 }
1397 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1398 return false;
1399 }
1400 Token xsp;
1401 xsp = jj_scanpos;
1402 if (jj_3R_59()) {
1403 jj_scanpos = xsp;
1404 if (jj_3R_60()) {
1405 jj_scanpos = xsp;
1406 if (jj_3R_61()) {
1407 jj_scanpos = xsp;
1408 if (jj_3R_62()) {
1409 jj_scanpos = xsp;
1410 if (jj_3R_63()) {
1411 jj_scanpos = xsp;
1412 if (jj_3R_64()) {
1413 jj_scanpos = xsp;
1414 if (jj_3R_65()) {
1415 jj_scanpos = xsp;
1416 if (jj_3R_66()) {
1417 return true;
1418 }
1419 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1420 return false;
1421 }
1422 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1423 return false;
1424 }
1425 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1426 return false;
1427 }
1428 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1429 return false;
1430 }
1431 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1432 return false;
1433 }
1434 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1435 return false;
1436 }
1437 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1438 return false;
1439 }
1440 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1441 return false;
1442 }
1443 return false;
1444 }
1445
1446 final private boolean jj_3R_40() {
1447 if (jj_scan_token(LPAREN)) {
1448 return true;
1449 }
1450 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1451 return false;
1452 }
1453 if (jj_3R_24()) {
1454 return true;
1455 }
1456 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1457 return false;
1458 }
1459 if (jj_scan_token(LBRACKET)) {
1460 return true;
1461 }
1462 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1463 return false;
1464 }
1465 if (jj_scan_token(RBRACKET)) {
1466 return true;
1467 }
1468 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1469 return false;
1470 }
1471 return false;
1472 }
1473
1474 final private boolean jj_3R_123() {
1475 if (jj_scan_token(LBRACKET)) {
1476 return true;
1477 }
1478 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1479 return false;
1480 }
1481 if (jj_scan_token(RBRACKET)) {
1482 return true;
1483 }
1484 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1485 return false;
1486 }
1487 return false;
1488 }
1489
1490 final private boolean jj_3_1() {
1491 if (jj_scan_token(DOT)) {
1492 return true;
1493 }
1494 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1495 return false;
1496 }
1497 if (jj_scan_token(IDENTIFIER)) {
1498 return true;
1499 }
1500 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1501 return false;
1502 }
1503 return false;
1504 }
1505
1506 final private boolean jj_3_4() {
1507 if (jj_scan_token(LPAREN)) {
1508 return true;
1509 }
1510 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1511 return false;
1512 }
1513 if (jj_3R_23()) {
1514 return true;
1515 }
1516 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1517 return false;
1518 }
1519 return false;
1520 }
1521
1522 final private boolean jj_3R_22() {
1523 Token xsp;
1524 xsp = jj_scanpos;
1525 if (jj_3_4()) {
1526 jj_scanpos = xsp;
1527 if (jj_3R_40()) {
1528 jj_scanpos = xsp;
1529 if (jj_3R_41()) {
1530 return true;
1531 }
1532 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1533 return false;
1534 }
1535 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1536 return false;
1537 }
1538 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1539 return false;
1540 }
1541 return false;
1542 }
1543
1544 final private boolean jj_3_3() {
1545 if (jj_3R_22()) {
1546 return true;
1547 }
1548 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1549 return false;
1550 }
1551 return false;
1552 }
1553
1554 final private boolean jj_3R_24() {
1555 if (jj_scan_token(IDENTIFIER)) {
1556 return true;
1557 }
1558 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1559 return false;
1560 }
1561 Token xsp;
1562 while (true) {
1563 xsp = jj_scanpos;
1564 if (jj_3_1()) {
1565 jj_scanpos = xsp;
1566 break;
1567 }
1568 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1569 return false;
1570 }
1571 }
1572 return false;
1573 }
1574
1575 final private boolean jj_3R_147() {
1576 if (jj_scan_token(BANG)) {
1577 return true;
1578 }
1579 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1580 return false;
1581 }
1582 return false;
1583 }
1584
1585 final private boolean jj_3R_142() {
1586 if (jj_3R_149()) {
1587 return true;
1588 }
1589 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1590 return false;
1591 }
1592 return false;
1593 }
1594
1595 final private boolean jj_3R_122() {
1596 if (jj_3R_24()) {
1597 return true;
1598 }
1599 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1600 return false;
1601 }
1602 return false;
1603 }
1604
1605 final private boolean jj_3R_49() {
1606 if (jj_scan_token(DOUBLE)) {
1607 return true;
1608 }
1609 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1610 return false;
1611 }
1612 return false;
1613 }
1614
1615 final private boolean jj_3R_141() {
1616 if (jj_3R_148()) {
1617 return true;
1618 }
1619 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1620 return false;
1621 }
1622 return false;
1623 }
1624
1625 final private boolean jj_3R_48() {
1626 if (jj_scan_token(FLOAT)) {
1627 return true;
1628 }
1629 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1630 return false;
1631 }
1632 return false;
1633 }
1634
1635 final private boolean jj_3R_146() {
1636 if (jj_scan_token(TILDE)) {
1637 return true;
1638 }
1639 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1640 return false;
1641 }
1642 return false;
1643 }
1644
1645 final private boolean jj_3R_47() {
1646 if (jj_scan_token(LONG)) {
1647 return true;
1648 }
1649 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1650 return false;
1651 }
1652 return false;
1653 }
1654
1655 final private boolean jj_3R_140() {
1656 Token xsp;
1657 xsp = jj_scanpos;
1658 if (jj_3R_146()) {
1659 jj_scanpos = xsp;
1660 if (jj_3R_147()) {
1661 return true;
1662 }
1663 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1664 return false;
1665 }
1666 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1667 return false;
1668 }
1669 if (jj_3R_115()) {
1670 return true;
1671 }
1672 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1673 return false;
1674 }
1675 return false;
1676 }
1677
1678 final private boolean jj_3R_136() {
1679 Token xsp;
1680 xsp = jj_scanpos;
1681 if (jj_3R_140()) {
1682 jj_scanpos = xsp;
1683 if (jj_3R_141()) {
1684 jj_scanpos = xsp;
1685 if (jj_3R_142()) {
1686 return true;
1687 }
1688 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1689 return false;
1690 }
1691 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1692 return false;
1693 }
1694 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1695 return false;
1696 }
1697 return false;
1698 }
1699
1700 final private boolean jj_3R_46() {
1701 if (jj_scan_token(INT)) {
1702 return true;
1703 }
1704 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1705 return false;
1706 }
1707 return false;
1708 }
1709
1710 final private boolean jj_3R_145() {
1711 if (jj_scan_token(REM)) {
1712 return true;
1713 }
1714 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1715 return false;
1716 }
1717 return false;
1718 }
1719
1720 final private boolean jj_3R_45() {
1721 if (jj_scan_token(SHORT)) {
1722 return true;
1723 }
1724 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1725 return false;
1726 }
1727 return false;
1728 }
1729
1730 final private boolean jj_3R_44() {
1731 if (jj_scan_token(BYTE)) {
1732 return true;
1733 }
1734 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1735 return false;
1736 }
1737 return false;
1738 }
1739
1740 final private boolean jj_3R_135() {
1741 if (jj_scan_token(DECR)) {
1742 return true;
1743 }
1744 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1745 return false;
1746 }
1747 if (jj_3R_20()) {
1748 return true;
1749 }
1750 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1751 return false;
1752 }
1753 return false;
1754 }
1755
1756 final private boolean jj_3R_43() {
1757 if (jj_scan_token(CHAR)) {
1758 return true;
1759 }
1760 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1761 return false;
1762 }
1763 return false;
1764 }
1765
1766 final private boolean jj_3R_23() {
1767 Token xsp;
1768 xsp = jj_scanpos;
1769 if (jj_3R_42()) {
1770 jj_scanpos = xsp;
1771 if (jj_3R_43()) {
1772 jj_scanpos = xsp;
1773 if (jj_3R_44()) {
1774 jj_scanpos = xsp;
1775 if (jj_3R_45()) {
1776 jj_scanpos = xsp;
1777 if (jj_3R_46()) {
1778 jj_scanpos = xsp;
1779 if (jj_3R_47()) {
1780 jj_scanpos = xsp;
1781 if (jj_3R_48()) {
1782 jj_scanpos = xsp;
1783 if (jj_3R_49()) {
1784 return true;
1785 }
1786 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1787 return false;
1788 }
1789 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1790 return false;
1791 }
1792 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1793 return false;
1794 }
1795 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1796 return false;
1797 }
1798 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1799 return false;
1800 }
1801 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1802 return false;
1803 }
1804 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1805 return false;
1806 }
1807 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1808 return false;
1809 }
1810 return false;
1811 }
1812
1813 final private boolean jj_3R_42() {
1814 if (jj_scan_token(BOOLEAN)) {
1815 return true;
1816 }
1817 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1818 return false;
1819 }
1820 return false;
1821 }
1822
1823 final private boolean jj_3_9() {
1824 if (jj_scan_token(LBRACKET)) {
1825 return true;
1826 }
1827 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1828 return false;
1829 }
1830 if (jj_scan_token(RBRACKET)) {
1831 return true;
1832 }
1833 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1834 return false;
1835 }
1836 return false;
1837 }
1838
1839 final private boolean jj_3R_121() {
1840 if (jj_3R_23()) {
1841 return true;
1842 }
1843 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1844 return false;
1845 }
1846 return false;
1847 }
1848
1849 final private boolean jj_3R_144() {
1850 if (jj_scan_token(SLASH)) {
1851 return true;
1852 }
1853 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1854 return false;
1855 }
1856 return false;
1857 }
1858
1859 final private boolean jj_3R_134() {
1860 if (jj_scan_token(INCR)) {
1861 return true;
1862 }
1863 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1864 return false;
1865 }
1866 if (jj_3R_20()) {
1867 return true;
1868 }
1869 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1870 return false;
1871 }
1872 return false;
1873 }
1874
1875 final private boolean jj_3R_114() {
1876 Token xsp;
1877 xsp = jj_scanpos;
1878 if (jj_3R_121()) {
1879 jj_scanpos = xsp;
1880 if (jj_3R_122()) {
1881 return true;
1882 }
1883 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1884 return false;
1885 }
1886 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1887 return false;
1888 }
1889 while (true) {
1890 xsp = jj_scanpos;
1891 if (jj_3R_123()) {
1892 jj_scanpos = xsp;
1893 break;
1894 }
1895 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1896 return false;
1897 }
1898 }
1899 return false;
1900 }
1901
1902 final private boolean jj_3R_120() {
1903 if (jj_scan_token(GE)) {
1904 return true;
1905 }
1906 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1907 return false;
1908 }
1909 return false;
1910 }
1911
1912 final private boolean jj_3R_133() {
1913 if (jj_scan_token(MINUS)) {
1914 return true;
1915 }
1916 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1917 return false;
1918 }
1919 return false;
1920 }
1921
1922 final private boolean jj_3R_127() {
1923 if (jj_3R_136()) {
1924 return true;
1925 }
1926 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1927 return false;
1928 }
1929 return false;
1930 }
1931
1932 final private boolean jj_3R_126() {
1933 if (jj_3R_135()) {
1934 return true;
1935 }
1936 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1937 return false;
1938 }
1939 return false;
1940 }
1941
1942 final private boolean jj_3R_139() {
1943 if (jj_scan_token(MINUS)) {
1944 return true;
1945 }
1946 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1947 return false;
1948 }
1949 return false;
1950 }
1951
1952 final private boolean jj_3R_125() {
1953 if (jj_3R_134()) {
1954 return true;
1955 }
1956 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1957 return false;
1958 }
1959 return false;
1960 }
1961
1962 final private boolean jj_3R_132() {
1963 if (jj_scan_token(PLUS)) {
1964 return true;
1965 }
1966 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1967 return false;
1968 }
1969 return false;
1970 }
1971
1972 final private boolean jj_3R_143() {
1973 if (jj_scan_token(STAR)) {
1974 return true;
1975 }
1976 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1977 return false;
1978 }
1979 return false;
1980 }
1981
1982 final private boolean jj_3R_124() {
1983 Token xsp;
1984 xsp = jj_scanpos;
1985 if (jj_3R_132()) {
1986 jj_scanpos = xsp;
1987 if (jj_3R_133()) {
1988 return true;
1989 }
1990 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1991 return false;
1992 }
1993 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
1994 return false;
1995 }
1996 if (jj_3R_115()) {
1997 return true;
1998 }
1999 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2000 return false;
2001 }
2002 return false;
2003 }
2004
2005 final private boolean jj_3R_115() {
2006 Token xsp;
2007 xsp = jj_scanpos;
2008 if (jj_3R_124()) {
2009 jj_scanpos = xsp;
2010 if (jj_3R_125()) {
2011 jj_scanpos = xsp;
2012 if (jj_3R_126()) {
2013 jj_scanpos = xsp;
2014 if (jj_3R_127()) {
2015 return true;
2016 }
2017 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2018 return false;
2019 }
2020 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2021 return false;
2022 }
2023 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2024 return false;
2025 }
2026 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2027 return false;
2028 }
2029 return false;
2030 }
2031
2032 final private boolean jj_3R_137() {
2033 Token xsp;
2034 xsp = jj_scanpos;
2035 if (jj_3R_143()) {
2036 jj_scanpos = xsp;
2037 if (jj_3R_144()) {
2038 jj_scanpos = xsp;
2039 if (jj_3R_145()) {
2040 return true;
2041 }
2042 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2043 return false;
2044 }
2045 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2046 return false;
2047 }
2048 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2049 return false;
2050 }
2051 if (jj_3R_115()) {
2052 return true;
2053 }
2054 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2055 return false;
2056 }
2057 return false;
2058 }
2059
2060 final private boolean jj_3R_131() {
2061 if (jj_scan_token(RUNSIGNEDSHIFT)) {
2062 return true;
2063 }
2064 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2065 return false;
2066 }
2067 return false;
2068 }
2069
2070 final private boolean jj_3R_119() {
2071 if (jj_scan_token(LE)) {
2072 return true;
2073 }
2074 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2075 return false;
2076 }
2077 return false;
2078 }
2079
2080 final private boolean jj_3R_138() {
2081 if (jj_scan_token(PLUS)) {
2082 return true;
2083 }
2084 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2085 return false;
2086 }
2087 return false;
2088 }
2089
2090 final private boolean jj_3R_112() {
2091 if (jj_3R_115()) {
2092 return true;
2093 }
2094 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2095 return false;
2096 }
2097 Token xsp;
2098 while (true) {
2099 xsp = jj_scanpos;
2100 if (jj_3R_137()) {
2101 jj_scanpos = xsp;
2102 break;
2103 }
2104 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2105 return false;
2106 }
2107 }
2108 return false;
2109 }
2110
2111 final private boolean jj_3R_88() {
2112 if (jj_3R_86()) {
2113 return true;
2114 }
2115 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2116 return false;
2117 }
2118 return false;
2119 }
2120
2121 final private boolean jj_3R_130() {
2122 if (jj_scan_token(RSIGNEDSHIFT)) {
2123 return true;
2124 }
2125 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2126 return false;
2127 }
2128 return false;
2129 }
2130
2131 final private boolean jj_3R_128() {
2132 Token xsp;
2133 xsp = jj_scanpos;
2134 if (jj_3R_138()) {
2135 jj_scanpos = xsp;
2136 if (jj_3R_139()) {
2137 return true;
2138 }
2139 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2140 return false;
2141 }
2142 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2143 return false;
2144 }
2145 if (jj_3R_112()) {
2146 return true;
2147 }
2148 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2149 return false;
2150 }
2151 return false;
2152 }
2153
2154 final private boolean jj_3R_87() {
2155 if (jj_3R_82()) {
2156 return true;
2157 }
2158 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2159 return false;
2160 }
2161 return false;
2162 }
2163
2164 final private boolean jj_3R_118() {
2165 if (jj_scan_token(GT)) {
2166 return true;
2167 }
2168 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2169 return false;
2170 }
2171 return false;
2172 }
2173
2174 final private boolean jj_3R_129() {
2175 if (jj_scan_token(LSHIFT)) {
2176 return true;
2177 }
2178 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2179 return false;
2180 }
2181 return false;
2182 }
2183
2184 final private boolean jj_3R_116() {
2185 Token xsp;
2186 xsp = jj_scanpos;
2187 if (jj_3R_129()) {
2188 jj_scanpos = xsp;
2189 if (jj_3R_130()) {
2190 jj_scanpos = xsp;
2191 if (jj_3R_131()) {
2192 return true;
2193 }
2194 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2195 return false;
2196 }
2197 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2198 return false;
2199 }
2200 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2201 return false;
2202 }
2203 if (jj_3R_108()) {
2204 return true;
2205 }
2206 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2207 return false;
2208 }
2209 return false;
2210 }
2211
2212 final private boolean jj_3R_108() {
2213 if (jj_3R_112()) {
2214 return true;
2215 }
2216 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2217 return false;
2218 }
2219 Token xsp;
2220 while (true) {
2221 xsp = jj_scanpos;
2222 if (jj_3R_128()) {
2223 jj_scanpos = xsp;
2224 break;
2225 }
2226 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2227 return false;
2228 }
2229 }
2230 return false;
2231 }
2232
2233 final private boolean jj_3_8() {
2234 if (jj_scan_token(LBRACKET)) {
2235 return true;
2236 }
2237 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2238 return false;
2239 }
2240 if (jj_3R_25()) {
2241 return true;
2242 }
2243 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2244 return false;
2245 }
2246 if (jj_scan_token(RBRACKET)) {
2247 return true;
2248 }
2249 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2250 return false;
2251 }
2252 return false;
2253 }
2254
2255 final private boolean jj_3R_86() {
2256 Token xsp;
2257 if (jj_3_8()) {
2258 return true;
2259 }
2260 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2261 return false;
2262 }
2263 while (true) {
2264 xsp = jj_scanpos;
2265 if (jj_3_8()) {
2266 jj_scanpos = xsp;
2267 break;
2268 }
2269 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2270 return false;
2271 }
2272 }
2273 while (true) {
2274 xsp = jj_scanpos;
2275 if (jj_3_9()) {
2276 jj_scanpos = xsp;
2277 break;
2278 }
2279 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2280 return false;
2281 }
2282 }
2283 return false;
2284 }
2285
2286 final private boolean jj_3R_117() {
2287 if (jj_scan_token(LT)) {
2288 return true;
2289 }
2290 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2291 return false;
2292 }
2293 return false;
2294 }
2295
2296 final private boolean jj_3R_106() {
2297 if (jj_3R_108()) {
2298 return true;
2299 }
2300 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2301 return false;
2302 }
2303 Token xsp;
2304 while (true) {
2305 xsp = jj_scanpos;
2306 if (jj_3R_116()) {
2307 jj_scanpos = xsp;
2308 break;
2309 }
2310 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2311 return false;
2312 }
2313 }
2314 return false;
2315 }
2316
2317 final private boolean jj_3R_113() {
2318 Token xsp;
2319 xsp = jj_scanpos;
2320 if (jj_3R_117()) {
2321 jj_scanpos = xsp;
2322 if (jj_3R_118()) {
2323 jj_scanpos = xsp;
2324 if (jj_3R_119()) {
2325 jj_scanpos = xsp;
2326 if (jj_3R_120()) {
2327 return true;
2328 }
2329 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2330 return false;
2331 }
2332 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2333 return false;
2334 }
2335 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2336 return false;
2337 }
2338 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2339 return false;
2340 }
2341 if (jj_3R_106()) {
2342 return true;
2343 }
2344 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2345 return false;
2346 }
2347 return false;
2348 }
2349
2350 final private boolean jj_3R_111() {
2351 if (jj_scan_token(NE)) {
2352 return true;
2353 }
2354 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2355 return false;
2356 }
2357 return false;
2358 }
2359
2360 final private boolean jj_3R_109() {
2361 if (jj_scan_token(INSTANCEOF)) {
2362 return true;
2363 }
2364 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2365 return false;
2366 }
2367 if (jj_3R_114()) {
2368 return true;
2369 }
2370 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2371 return false;
2372 }
2373 return false;
2374 }
2375
2376 final private boolean jj_3R_104() {
2377 if (jj_3R_106()) {
2378 return true;
2379 }
2380 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2381 return false;
2382 }
2383 Token xsp;
2384 while (true) {
2385 xsp = jj_scanpos;
2386 if (jj_3R_113()) {
2387 jj_scanpos = xsp;
2388 break;
2389 }
2390 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2391 return false;
2392 }
2393 }
2394 return false;
2395 }
2396
2397 final private boolean jj_3R_81() {
2398 if (jj_scan_token(NEW)) {
2399 return true;
2400 }
2401 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2402 return false;
2403 }
2404 if (jj_3R_24()) {
2405 return true;
2406 }
2407 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2408 return false;
2409 }
2410 Token xsp;
2411 xsp = jj_scanpos;
2412 if (jj_3R_87()) {
2413 jj_scanpos = xsp;
2414 if (jj_3R_88()) {
2415 return true;
2416 }
2417 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2418 return false;
2419 }
2420 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2421 return false;
2422 }
2423 return false;
2424 }
2425
2426 final private boolean jj_3_7() {
2427 if (jj_scan_token(NEW)) {
2428 return true;
2429 }
2430 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2431 return false;
2432 }
2433 if (jj_3R_23()) {
2434 return true;
2435 }
2436 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2437 return false;
2438 }
2439 if (jj_3R_86()) {
2440 return true;
2441 }
2442 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2443 return false;
2444 }
2445 return false;
2446 }
2447
2448 final private boolean jj_3R_70() {
2449 Token xsp;
2450 xsp = jj_scanpos;
2451 if (jj_3_7()) {
2452 jj_scanpos = xsp;
2453 if (jj_3R_81()) {
2454 return true;
2455 }
2456 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2457 return false;
2458 }
2459 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2460 return false;
2461 }
2462 return false;
2463 }
2464
2465 final private boolean jj_3R_97() {
2466 if (jj_scan_token(COMMA)) {
2467 return true;
2468 }
2469 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2470 return false;
2471 }
2472 if (jj_3R_25()) {
2473 return true;
2474 }
2475 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2476 return false;
2477 }
2478 return false;
2479 }
2480
2481 final private boolean jj_3R_39() {
2482 if (jj_scan_token(ORASSIGN)) {
2483 return true;
2484 }
2485 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2486 return false;
2487 }
2488 return false;
2489 }
2490
2491 final private boolean jj_3R_110() {
2492 if (jj_scan_token(EQ)) {
2493 return true;
2494 }
2495 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2496 return false;
2497 }
2498 return false;
2499 }
2500
2501 final private boolean jj_3R_102() {
2502 if (jj_3R_104()) {
2503 return true;
2504 }
2505 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2506 return false;
2507 }
2508 Token xsp;
2509 xsp = jj_scanpos;
2510 if (jj_3R_109()) {
2511 jj_scanpos = xsp;
2512 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2513 return false;
2514 }
2515 return false;
2516 }
2517
2518 final private boolean jj_3R_107() {
2519 Token xsp;
2520 xsp = jj_scanpos;
2521 if (jj_3R_110()) {
2522 jj_scanpos = xsp;
2523 if (jj_3R_111()) {
2524 return true;
2525 }
2526 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2527 return false;
2528 }
2529 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2530 return false;
2531 }
2532 if (jj_3R_102()) {
2533 return true;
2534 }
2535 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2536 return false;
2537 }
2538 return false;
2539 }
2540
2541 final private boolean jj_3R_94() {
2542 if (jj_3R_25()) {
2543 return true;
2544 }
2545 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2546 return false;
2547 }
2548 Token xsp;
2549 while (true) {
2550 xsp = jj_scanpos;
2551 if (jj_3R_97()) {
2552 jj_scanpos = xsp;
2553 break;
2554 }
2555 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2556 return false;
2557 }
2558 }
2559 return false;
2560 }
2561
2562 final private boolean jj_3R_89() {
2563 if (jj_3R_94()) {
2564 return true;
2565 }
2566 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2567 return false;
2568 }
2569 return false;
2570 }
2571
2572 final private boolean jj_3R_38() {
2573 if (jj_scan_token(XORASSIGN)) {
2574 return true;
2575 }
2576 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2577 return false;
2578 }
2579 return false;
2580 }
2581
2582 final private boolean jj_3R_82() {
2583 if (jj_scan_token(LPAREN)) {
2584 return true;
2585 }
2586 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2587 return false;
2588 }
2589 Token xsp;
2590 xsp = jj_scanpos;
2591 if (jj_3R_89()) {
2592 jj_scanpos = xsp;
2593 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2594 return false;
2595 }
2596 if (jj_scan_token(RPAREN)) {
2597 return true;
2598 }
2599 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2600 return false;
2601 }
2602 return false;
2603 }
2604
2605 final private boolean jj_3R_105() {
2606 if (jj_scan_token(BIT_AND)) {
2607 return true;
2608 }
2609 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2610 return false;
2611 }
2612 if (jj_3R_100()) {
2613 return true;
2614 }
2615 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2616 return false;
2617 }
2618 return false;
2619 }
2620
2621 final private boolean jj_3R_100() {
2622 if (jj_3R_102()) {
2623 return true;
2624 }
2625 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2626 return false;
2627 }
2628 Token xsp;
2629 while (true) {
2630 xsp = jj_scanpos;
2631 if (jj_3R_107()) {
2632 jj_scanpos = xsp;
2633 break;
2634 }
2635 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2636 return false;
2637 }
2638 }
2639 return false;
2640 }
2641
2642 final private boolean jj_3R_37() {
2643 if (jj_scan_token(ANDASSIGN)) {
2644 return true;
2645 }
2646 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2647 return false;
2648 }
2649 return false;
2650 }
2651
2652 final private boolean jj_3R_85() {
2653 if (jj_scan_token(NULL)) {
2654 return true;
2655 }
2656 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2657 return false;
2658 }
2659 return false;
2660 }
2661
2662 final private boolean jj_3R_103() {
2663 if (jj_scan_token(XOR)) {
2664 return true;
2665 }
2666 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2667 return false;
2668 }
2669 if (jj_3R_98()) {
2670 return true;
2671 }
2672 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2673 return false;
2674 }
2675 return false;
2676 }
2677
2678 final private boolean jj_3R_98() {
2679 if (jj_3R_100()) {
2680 return true;
2681 }
2682 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2683 return false;
2684 }
2685 Token xsp;
2686 while (true) {
2687 xsp = jj_scanpos;
2688 if (jj_3R_105()) {
2689 jj_scanpos = xsp;
2690 break;
2691 }
2692 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2693 return false;
2694 }
2695 }
2696 return false;
2697 }
2698
2699 final private boolean jj_3R_92() {
2700 if (jj_scan_token(FALSE)) {
2701 return true;
2702 }
2703 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2704 return false;
2705 }
2706 return false;
2707 }
2708
2709 final private boolean jj_3R_36() {
2710 if (jj_scan_token(RUNSIGNEDSHIFTASSIGN)) {
2711 return true;
2712 }
2713 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2714 return false;
2715 }
2716 return false;
2717 }
2718
2719 final private boolean jj_3R_91() {
2720 if (jj_scan_token(TRUE)) {
2721 return true;
2722 }
2723 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2724 return false;
2725 }
2726 return false;
2727 }
2728
2729 final private boolean jj_3R_84() {
2730 Token xsp;
2731 xsp = jj_scanpos;
2732 if (jj_3R_91()) {
2733 jj_scanpos = xsp;
2734 if (jj_3R_92()) {
2735 return true;
2736 }
2737 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2738 return false;
2739 }
2740 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2741 return false;
2742 }
2743 return false;
2744 }
2745
2746 final private boolean jj_3R_101() {
2747 if (jj_scan_token(BIT_OR)) {
2748 return true;
2749 }
2750 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2751 return false;
2752 }
2753 if (jj_3R_95()) {
2754 return true;
2755 }
2756 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2757 return false;
2758 }
2759 return false;
2760 }
2761
2762 final private boolean jj_3R_95() {
2763 if (jj_3R_98()) {
2764 return true;
2765 }
2766 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2767 return false;
2768 }
2769 Token xsp;
2770 while (true) {
2771 xsp = jj_scanpos;
2772 if (jj_3R_103()) {
2773 jj_scanpos = xsp;
2774 break;
2775 }
2776 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2777 return false;
2778 }
2779 }
2780 return false;
2781 }
2782
2783 final private boolean jj_3R_35() {
2784 if (jj_scan_token(RSIGNEDSHIFTASSIGN)) {
2785 return true;
2786 }
2787 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2788 return false;
2789 }
2790 return false;
2791 }
2792
2793 final private boolean jj_3R_80() {
2794 if (jj_3R_85()) {
2795 return true;
2796 }
2797 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2798 return false;
2799 }
2800 return false;
2801 }
2802
2803 final private boolean jj_3R_66() {
2804 if (jj_3R_69()) {
2805 return true;
2806 }
2807 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2808 return false;
2809 }
2810 return false;
2811 }
2812
2813 final private boolean jj_3R_79() {
2814 if (jj_3R_84()) {
2815 return true;
2816 }
2817 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2818 return false;
2819 }
2820 return false;
2821 }
2822
2823 final private boolean jj_3R_78() {
2824 if (jj_scan_token(STRING_LITERAL)) {
2825 return true;
2826 }
2827 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2828 return false;
2829 }
2830 return false;
2831 }
2832
2833 final private boolean jj_3R_99() {
2834 if (jj_scan_token(SC_AND)) {
2835 return true;
2836 }
2837 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2838 return false;
2839 }
2840 if (jj_3R_90()) {
2841 return true;
2842 }
2843 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2844 return false;
2845 }
2846 return false;
2847 }
2848
2849 final private boolean jj_3R_90() {
2850 if (jj_3R_95()) {
2851 return true;
2852 }
2853 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2854 return false;
2855 }
2856 Token xsp;
2857 while (true) {
2858 xsp = jj_scanpos;
2859 if (jj_3R_101()) {
2860 jj_scanpos = xsp;
2861 break;
2862 }
2863 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2864 return false;
2865 }
2866 }
2867 return false;
2868 }
2869
2870 final private boolean jj_3R_34() {
2871 if (jj_scan_token(LSHIFTASSIGN)) {
2872 return true;
2873 }
2874 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2875 return false;
2876 }
2877 return false;
2878 }
2879
2880 final private boolean jj_3R_65() {
2881 if (jj_scan_token(NEW)) {
2882 return true;
2883 }
2884 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2885 return false;
2886 }
2887 return false;
2888 }
2889
2890 final private boolean jj_3R_77() {
2891 if (jj_scan_token(CHARACTER_LITERAL)) {
2892 return true;
2893 }
2894 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2895 return false;
2896 }
2897 return false;
2898 }
2899
2900 final private boolean jj_3R_76() {
2901 if (jj_scan_token(FLOATING_POINT_LITERAL)) {
2902 return true;
2903 }
2904 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2905 return false;
2906 }
2907 return false;
2908 }
2909
2910 final private boolean jj_3R_33() {
2911 if (jj_scan_token(MINUSASSIGN)) {
2912 return true;
2913 }
2914 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2915 return false;
2916 }
2917 return false;
2918 }
2919
2920 final private boolean jj_3R_69() {
2921 Token xsp;
2922 xsp = jj_scanpos;
2923 if (jj_3R_75()) {
2924 jj_scanpos = xsp;
2925 if (jj_3R_76()) {
2926 jj_scanpos = xsp;
2927 if (jj_3R_77()) {
2928 jj_scanpos = xsp;
2929 if (jj_3R_78()) {
2930 jj_scanpos = xsp;
2931 if (jj_3R_79()) {
2932 jj_scanpos = xsp;
2933 if (jj_3R_80()) {
2934 return true;
2935 }
2936 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2937 return false;
2938 }
2939 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2940 return false;
2941 }
2942 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2943 return false;
2944 }
2945 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2946 return false;
2947 }
2948 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2949 return false;
2950 }
2951 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2952 return false;
2953 }
2954 return false;
2955 }
2956
2957 final private boolean jj_3R_75() {
2958 if (jj_scan_token(INTEGER_LITERAL)) {
2959 return true;
2960 }
2961 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2962 return false;
2963 }
2964 return false;
2965 }
2966
2967 final private boolean jj_3R_96() {
2968 if (jj_scan_token(SC_OR)) {
2969 return true;
2970 }
2971 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2972 return false;
2973 }
2974 if (jj_3R_83()) {
2975 return true;
2976 }
2977 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2978 return false;
2979 }
2980 return false;
2981 }
2982
2983 final private boolean jj_3R_83() {
2984 if (jj_3R_90()) {
2985 return true;
2986 }
2987 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2988 return false;
2989 }
2990 Token xsp;
2991 while (true) {
2992 xsp = jj_scanpos;
2993 if (jj_3R_99()) {
2994 jj_scanpos = xsp;
2995 break;
2996 }
2997 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
2998 return false;
2999 }
3000 }
3001 return false;
3002 }
3003
3004 final private boolean jj_3R_64() {
3005 if (jj_scan_token(SUPER)) {
3006 return true;
3007 }
3008 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3009 return false;
3010 }
3011 return false;
3012 }
3013
3014 final private boolean jj_3R_32() {
3015 if (jj_scan_token(PLUSASSIGN)) {
3016 return true;
3017 }
3018 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3019 return false;
3020 }
3021 return false;
3022 }
3023
3024 final private boolean jj_3R_73() {
3025 if (jj_3R_82()) {
3026 return true;
3027 }
3028 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3029 return false;
3030 }
3031 return false;
3032 }
3033
3034 final private boolean jj_3R_72() {
3035 if (jj_scan_token(DOT)) {
3036 return true;
3037 }
3038 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3039 return false;
3040 }
3041 if (jj_scan_token(IDENTIFIER)) {
3042 return true;
3043 }
3044 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3045 return false;
3046 }
3047 return false;
3048 }
3049
3050 final private boolean jj_3R_74() {
3051 if (jj_3R_83()) {
3052 return true;
3053 }
3054 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3055 return false;
3056 }
3057 Token xsp;
3058 while (true) {
3059 xsp = jj_scanpos;
3060 if (jj_3R_96()) {
3061 jj_scanpos = xsp;
3062 break;
3063 }
3064 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3065 return false;
3066 }
3067 }
3068 return false;
3069 }
3070
3071 final private boolean jj_3R_63() {
3072 if (jj_scan_token(THIS)) {
3073 return true;
3074 }
3075 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3076 return false;
3077 }
3078 return false;
3079 }
3080
3081 final private boolean jj_3R_31() {
3082 if (jj_scan_token(REMASSIGN)) {
3083 return true;
3084 }
3085 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3086 return false;
3087 }
3088 return false;
3089 }
3090
3091 final private boolean jj_3R_58() {
3092 Token xsp;
3093 xsp = jj_scanpos;
3094 if (jj_3R_71()) {
3095 jj_scanpos = xsp;
3096 if (jj_3R_72()) {
3097 jj_scanpos = xsp;
3098 if (jj_3R_73()) {
3099 return true;
3100 }
3101 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3102 return false;
3103 }
3104 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3105 return false;
3106 }
3107 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3108 return false;
3109 }
3110 return false;
3111 }
3112
3113 final private boolean jj_3R_71() {
3114 if (jj_scan_token(LBRACKET)) {
3115 return true;
3116 }
3117 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3118 return false;
3119 }
3120 if (jj_3R_25()) {
3121 return true;
3122 }
3123 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3124 return false;
3125 }
3126 if (jj_scan_token(RBRACKET)) {
3127 return true;
3128 }
3129 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3130 return false;
3131 }
3132 return false;
3133 }
3134
3135 final private boolean jj_3R_93() {
3136 if (jj_scan_token(HOOK)) {
3137 return true;
3138 }
3139 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3140 return false;
3141 }
3142 if (jj_3R_25()) {
3143 return true;
3144 }
3145 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3146 return false;
3147 }
3148 if (jj_scan_token(COLON)) {
3149 return true;
3150 }
3151 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3152 return false;
3153 }
3154 if (jj_3R_68()) {
3155 return true;
3156 }
3157 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3158 return false;
3159 }
3160 return false;
3161 }
3162
3163 final private boolean jj_3R_57() {
3164 if (jj_3R_70()) {
3165 return true;
3166 }
3167 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3168 return false;
3169 }
3170 return false;
3171 }
3172
3173 final private boolean jj_3R_30() {
3174 if (jj_scan_token(SLASHASSIGN)) {
3175 return true;
3176 }
3177 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3178 return false;
3179 }
3180 return false;
3181 }
3182
3183 final private boolean jj_3R_27() {
3184 if (jj_3R_58()) {
3185 return true;
3186 }
3187 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3188 return false;
3189 }
3190 return false;
3191 }
3192
3193 final private boolean jj_3R_56() {
3194 if (jj_scan_token(LPAREN)) {
3195 return true;
3196 }
3197 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3198 return false;
3199 }
3200 if (jj_3R_25()) {
3201 return true;
3202 }
3203 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3204 return false;
3205 }
3206 if (jj_scan_token(RPAREN)) {
3207 return true;
3208 }
3209 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3210 return false;
3211 }
3212 return false;
3213 }
3214
3215 final private boolean jj_3R_152() {
3216 if (jj_scan_token(LBRACKET)) {
3217 return true;
3218 }
3219 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3220 return false;
3221 }
3222 if (jj_scan_token(RBRACKET)) {
3223 return true;
3224 }
3225 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3226 return false;
3227 }
3228 return false;
3229 }
3230
3231 final private boolean jj_3R_55() {
3232 if (jj_scan_token(SUPER)) {
3233 return true;
3234 }
3235 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3236 return false;
3237 }
3238 if (jj_scan_token(DOT)) {
3239 return true;
3240 }
3241 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3242 return false;
3243 }
3244 if (jj_scan_token(IDENTIFIER)) {
3245 return true;
3246 }
3247 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3248 return false;
3249 }
3250 return false;
3251 }
3252
3253 final private boolean jj_3R_29() {
3254 if (jj_scan_token(STARASSIGN)) {
3255 return true;
3256 }
3257 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3258 return false;
3259 }
3260 return false;
3261 }
3262
3263 final private boolean jj_3R_68() {
3264 if (jj_3R_74()) {
3265 return true;
3266 }
3267 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3268 return false;
3269 }
3270 Token xsp;
3271 xsp = jj_scanpos;
3272 if (jj_3R_93()) {
3273 jj_scanpos = xsp;
3274 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3275 return false;
3276 }
3277 return false;
3278 }
3279
3280 final private boolean jj_3R_54() {
3281 if (jj_scan_token(THIS)) {
3282 return true;
3283 }
3284 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3285 return false;
3286 }
3287 return false;
3288 }
3289
3290 final private boolean jj_3R_62() {
3291 if (jj_scan_token(IDENTIFIER)) {
3292 return true;
3293 }
3294 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3295 return false;
3296 }
3297 return false;
3298 }
3299
3300 final private boolean jj_3R_53() {
3301 if (jj_3R_24()) {
3302 return true;
3303 }
3304 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3305 return false;
3306 }
3307 return false;
3308 }
3309
3310 final private boolean jj_3R_153() {
3311 if (jj_scan_token(LBRACKET)) {
3312 return true;
3313 }
3314 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3315 return false;
3316 }
3317 if (jj_scan_token(RBRACKET)) {
3318 return true;
3319 }
3320 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3321 return false;
3322 }
3323 return false;
3324 }
3325
3326 final private boolean jj_3R_26() {
3327 Token xsp;
3328 xsp = jj_scanpos;
3329 if (jj_3R_52()) {
3330 jj_scanpos = xsp;
3331 if (jj_3R_53()) {
3332 jj_scanpos = xsp;
3333 if (jj_3R_54()) {
3334 jj_scanpos = xsp;
3335 if (jj_3R_55()) {
3336 jj_scanpos = xsp;
3337 if (jj_3R_56()) {
3338 jj_scanpos = xsp;
3339 if (jj_3R_57()) {
3340 return true;
3341 }
3342 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3343 return false;
3344 }
3345 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3346 return false;
3347 }
3348 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3349 return false;
3350 }
3351 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3352 return false;
3353 }
3354 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3355 return false;
3356 }
3357 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3358 return false;
3359 }
3360 return false;
3361 }
3362
3363 final private boolean jj_3R_52() {
3364 if (jj_3R_69()) {
3365 return true;
3366 }
3367 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3368 return false;
3369 }
3370 return false;
3371 }
3372
3373 final private boolean jj_3R_21() {
3374 Token xsp;
3375 xsp = jj_scanpos;
3376 if (jj_3R_28()) {
3377 jj_scanpos = xsp;
3378 if (jj_3R_29()) {
3379 jj_scanpos = xsp;
3380 if (jj_3R_30()) {
3381 jj_scanpos = xsp;
3382 if (jj_3R_31()) {
3383 jj_scanpos = xsp;
3384 if (jj_3R_32()) {
3385 jj_scanpos = xsp;
3386 if (jj_3R_33()) {
3387 jj_scanpos = xsp;
3388 if (jj_3R_34()) {
3389 jj_scanpos = xsp;
3390 if (jj_3R_35()) {
3391 jj_scanpos = xsp;
3392 if (jj_3R_36()) {
3393 jj_scanpos = xsp;
3394 if (jj_3R_37()) {
3395 jj_scanpos = xsp;
3396 if (jj_3R_38()) {
3397 jj_scanpos = xsp;
3398 if (jj_3R_39()) {
3399 return true;
3400 }
3401 if (jj_la == 0
3402 && jj_scanpos == jj_lastpos) {
3403 return false;
3404 }
3405 } else if (jj_la == 0
3406 && jj_scanpos == jj_lastpos) {
3407 return false;
3408 }
3409 } else if (jj_la == 0
3410 && jj_scanpos == jj_lastpos) {
3411 return false;
3412 }
3413 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3414 return false;
3415 }
3416 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3417 return false;
3418 }
3419 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3420 return false;
3421 }
3422 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3423 return false;
3424 }
3425 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3426 return false;
3427 }
3428 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3429 return false;
3430 }
3431 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3432 return false;
3433 }
3434 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3435 return false;
3436 }
3437 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3438 return false;
3439 }
3440 return false;
3441 }
3442
3443 final private boolean jj_3R_28() {
3444 if (jj_scan_token(ASSIGN)) {
3445 return true;
3446 }
3447 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3448 return false;
3449 }
3450 return false;
3451 }
3452
3453 final private boolean jj_3R_61() {
3454 if (jj_scan_token(LPAREN)) {
3455 return true;
3456 }
3457 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3458 return false;
3459 }
3460 return false;
3461 }
3462
3463 final private boolean jj_3_2() {
3464 if (jj_3R_20()) {
3465 return true;
3466 }
3467 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3468 return false;
3469 }
3470 if (jj_3R_21()) {
3471 return true;
3472 }
3473 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3474 return false;
3475 }
3476 return false;
3477 }
3478
3479 final private boolean jj_3R_20() {
3480 if (jj_3R_26()) {
3481 return true;
3482 }
3483 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3484 return false;
3485 }
3486 Token xsp;
3487 while (true) {
3488 xsp = jj_scanpos;
3489 if (jj_3R_27()) {
3490 jj_scanpos = xsp;
3491 break;
3492 }
3493 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3494 return false;
3495 }
3496 }
3497 return false;
3498 }
3499
3500 final private boolean jj_3R_60() {
3501 if (jj_scan_token(BANG)) {
3502 return true;
3503 }
3504 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3505 return false;
3506 }
3507 return false;
3508 }
3509
3510 final private boolean jj_3R_155() {
3511 if (jj_scan_token(DECR)) {
3512 return true;
3513 }
3514 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3515 return false;
3516 }
3517 return false;
3518 }
3519
3520 final private boolean jj_3R_67() {
3521 if (jj_3R_20()) {
3522 return true;
3523 }
3524 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3525 return false;
3526 }
3527 if (jj_3R_21()) {
3528 return true;
3529 }
3530 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3531 return false;
3532 }
3533 if (jj_3R_25()) {
3534 return true;
3535 }
3536 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3537 return false;
3538 }
3539 return false;
3540 }
3541
3542 final private boolean jj_3R_150() {
3543 if (jj_scan_token(LPAREN)) {
3544 return true;
3545 }
3546 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3547 return false;
3548 }
3549 if (jj_3R_24()) {
3550 return true;
3551 }
3552 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3553 return false;
3554 }
3555 Token xsp;
3556 while (true) {
3557 xsp = jj_scanpos;
3558 if (jj_3R_153()) {
3559 jj_scanpos = xsp;
3560 break;
3561 }
3562 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3563 return false;
3564 }
3565 }
3566 if (jj_scan_token(RPAREN)) {
3567 return true;
3568 }
3569 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3570 return false;
3571 }
3572 if (jj_3R_136()) {
3573 return true;
3574 }
3575 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3576 return false;
3577 }
3578 return false;
3579 }
3580
3581 final private boolean jj_3R_59() {
3582 if (jj_scan_token(TILDE)) {
3583 return true;
3584 }
3585 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3586 return false;
3587 }
3588 return false;
3589 }
3590
3591 final private boolean jj_3R_51() {
3592 if (jj_3R_68()) {
3593 return true;
3594 }
3595 if (jj_la == 0 && jj_scanpos == jj_lastpos) {
3596 return false;
3597 }
3598 return false;
3599 }
3600
3601 public ExpressionParserTokenManager token_source;
3602 ASCII_UCodeESC_CharStream jj_input_stream;
3603 public Token token, jj_nt;
3604 private int jj_ntk;
3605 private Token jj_scanpos, jj_lastpos;
3606 private int jj_la;
3607 public boolean lookingAhead = false;
3608 private int jj_gen;
3609 final private int[] jj_la1 = new int[44];
3610 final private int[] jj_la1_0 = { 0x8209400, 0x0, 0x8209400, 0x0, 0x1000000,
3611 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
3612 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000000, 0x0, 0x0, 0x1000000, 0x1000000,
3613 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1000000, 0x0, 0x1000000,
3614 0x1000000, 0x1000000, 0x0, 0x0, 0x0, };
3615 final private int[] jj_la1_1 = { 0x2014, 0x0, 0x2014, 0x0, 0x884480c0, 0x0,
3616 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0,
3617 0x0, 0x0, 0x0, 0x0, 0x884480c0, 0x0, 0x0, 0x884480c0, 0x884480c0, 0x0,
3618 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x884480c0, 0x0, 0x88400080, 0x400000,
3619 0x884480c0, 0x0, 0x0, 0x40, };
3620 final private int[] jj_la1_2 = { 0x8, 0x400, 0x0, 0x2000, 0xf00c004e,
3621 0x8000, 0x100000, 0x4000000, 0x8000000, 0x0, 0x0, 0x0, 0x2400000,
3622 0x2400000, 0x0, 0x1830000, 0x1830000, 0x0, 0x0, 0xc0000000,
3623 0xc0000000, 0x0, 0x0, 0xc0000000, 0xf00c004e, 0xc0000, 0xc0000, 0x4e,
3624 0xc004e, 0x40, 0x30000000, 0x30000000, 0x400, 0x400, 0x40, 0x4440,
3625 0x4e, 0x4440, 0x6, 0x0, 0xf00c004e, 0x2000, 0x440, 0x0, };
3626 final private int[] jj_la1_3 = { 0x0, 0x0, 0x0, 0x0, 0x0, 0xffe00, 0x0, 0x0,
3627 0x0, 0x8, 0x10, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1c0, 0x1c0, 0x0, 0x0,
3628 0x23, 0x23, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
3629 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, };
3630 final private JJExpressionParserCalls[] jj_2_rtns = new JJExpressionParserCalls[9];
3631 private boolean jj_rescan = false;
3632 private int jj_gc = 0;
3633
3634 public ExpressionParser(java.io.InputStream stream) {
3635 jj_input_stream = new ASCII_UCodeESC_CharStream(stream, 1, 1);
3636 token_source = new ExpressionParserTokenManager(jj_input_stream);
3637 token = new Token();
3638 jj_ntk = -1;
3639 jj_gen = 0;
3640 for (int i = 0; i < 44; i++) {
3641 jj_la1[i] = -1;
3642 }
3643 for (int i = 0; i < jj_2_rtns.length; i++) {
3644 jj_2_rtns[i] = new JJExpressionParserCalls();
3645 }
3646 }
3647
3648 public void ReInit(java.io.InputStream stream) {
3649 jj_input_stream.ReInit(stream, 1, 1);
3650 token_source.ReInit(jj_input_stream);
3651 token = new Token();
3652 jj_ntk = -1;
3653 jj_gen = 0;
3654 for (int i = 0; i < 44; i++) {
3655 jj_la1[i] = -1;
3656 }
3657 for (int i = 0; i < jj_2_rtns.length; i++) {
3658 jj_2_rtns[i] = new JJExpressionParserCalls();
3659 }
3660 }
3661
3662 public ExpressionParser(ExpressionParserTokenManager tm) {
3663 token_source = tm;
3664 token = new Token();
3665 jj_ntk = -1;
3666 jj_gen = 0;
3667 for (int i = 0; i < 44; i++) {
3668 jj_la1[i] = -1;
3669 }
3670 for (int i = 0; i < jj_2_rtns.length; i++) {
3671 jj_2_rtns[i] = new JJExpressionParserCalls();
3672 }
3673 }
3674
3675 public void ReInit(ExpressionParserTokenManager tm) {
3676 token_source = tm;
3677 token = new Token();
3678 jj_ntk = -1;
3679 jj_gen = 0;
3680 for (int i = 0; i < 44; i++) {
3681 jj_la1[i] = -1;
3682 }
3683 for (int i = 0; i < jj_2_rtns.length; i++) {
3684 jj_2_rtns[i] = new JJExpressionParserCalls();
3685 }
3686 }
3687
3688 final private Token jj_consume_token(int kind) throws ParseException {
3689 Token oldToken;
3690 if ((oldToken = token).next != null) {
3691 token = token.next;
3692 } else {
3693 token = token.next = token_source.getNextToken();
3694 }
3695 jj_ntk = -1;
3696 if (token.kind == kind) {
3697 jj_gen++;
3698 if (++jj_gc > 100) {
3699 jj_gc = 0;
3700 for (JJExpressionParserCalls jj_2_rtn : jj_2_rtns) {
3701 JJExpressionParserCalls c = jj_2_rtn;
3702 while (c != null) {
3703 if (c.gen < jj_gen) {
3704 c.first = null;
3705 }
3706 c = c.next;
3707 }
3708 }
3709 }
3710 return token;
3711 }
3712 token = oldToken;
3713 jj_kind = kind;
3714 throw generateParseException();
3715 }
3716
3717 final private boolean jj_scan_token(int kind) {
3718 if (jj_scanpos == jj_lastpos) {
3719 jj_la--;
3720 if (jj_scanpos.next == null) {
3721 jj_lastpos = jj_scanpos = jj_scanpos.next = token_source
3722 .getNextToken();
3723 } else {
3724 jj_lastpos = jj_scanpos = jj_scanpos.next;
3725 }
3726 } else {
3727 jj_scanpos = jj_scanpos.next;
3728 }
3729 if (jj_rescan) {
3730 int i = 0;
3731 Token tok = token;
3732 while (tok != null && tok != jj_scanpos) {
3733 i++;
3734 tok = tok.next;
3735 }
3736 if (tok != null) {
3737 jj_add_error_token(kind, i);
3738 }
3739 }
3740 return (jj_scanpos.kind != kind);
3741 }
3742
3743 final public Token getNextToken() {
3744 if (token.next != null) {
3745 token = token.next;
3746 } else {
3747 token = token.next = token_source.getNextToken();
3748 }
3749 jj_ntk = -1;
3750 jj_gen++;
3751 return token;
3752 }
3753
3754 final public Token getToken(int index) {
3755 Token t = lookingAhead ? jj_scanpos : token;
3756 for (int i = 0; i < index; i++) {
3757 if (t.next != null) {
3758 t = t.next;
3759 } else {
3760 t = t.next = token_source.getNextToken();
3761 }
3762 }
3763 return t;
3764 }
3765
3766 final private int jj_ntk() {
3767 if ((jj_nt = token.next) == null) {
3768 return (jj_ntk = (token.next=token_source.getNextToken()).kind);
3769 } else {
3770 return (jj_ntk = jj_nt.kind);
3771 }
3772 }
3773
3774 private java.util.Vector<int[]> jj_expentries = new java.util.Vector<int[]>();
3775 private int[] jj_expentry;
3776 private int jj_kind = -1;
3777 private int[] jj_lasttokens = new int[100];
3778 private int jj_endpos;
3779
3780 private void jj_add_error_token(int kind, int pos) {
3781 if (pos >= 100) {
3782 return;
3783 }
3784 if (pos == jj_endpos + 1) {
3785 jj_lasttokens[jj_endpos++] = kind;
3786 } else if (jj_endpos != 0) {
3787 jj_expentry = new int[jj_endpos];
3788 for (int i = 0; i < jj_endpos; i++) {
3789 jj_expentry[i] = jj_lasttokens[i];
3790 }
3791 boolean exists = false;
3792 for (java.util.Enumeration<int[]> enum_ = jj_expentries.elements(); enum_
3793 .hasMoreElements();) {
3794 int[] oldentry = (enum_.nextElement());
3795 if (oldentry.length == jj_expentry.length) {
3796 exists = true;
3797 for (int i = 0; i < jj_expentry.length; i++) {
3798 if (oldentry[i] != jj_expentry[i]) {
3799 exists = false;
3800 break;
3801 }
3802 }
3803 if (exists) {
3804 break;
3805 }
3806 }
3807 }
3808 if (!exists) {
3809 jj_expentries.addElement(jj_expentry);
3810 }
3811 if (pos != 0) {
3812 jj_lasttokens[(jj_endpos = pos) - 1] = kind;
3813 }
3814 }
3815 }
3816
3817 final public ParseException generateParseException() {
3818 jj_expentries.removeAllElements();
3819 boolean[] la1tokens = new boolean[116];
3820 for (int i = 0; i < 116; i++) {
3821 la1tokens[i] = false;
3822 }
3823 if (jj_kind >= 0) {
3824 la1tokens[jj_kind] = true;
3825 jj_kind = -1;
3826 }
3827 for (int i = 0; i < 44; i++) {
3828 if (jj_la1[i] == jj_gen) {
3829 for (int j = 0; j < 32; j++) {
3830 if ((jj_la1_0[i] & (1<<j)) != 0) {
3831 la1tokens[j] = true;
3832 }
3833 if ((jj_la1_1[i] & (1<<j)) != 0) {
3834 la1tokens[32+j] = true;
3835 }
3836 if ((jj_la1_2[i] & (1<<j)) != 0) {
3837 la1tokens[64+j] = true;
3838 }
3839 if ((jj_la1_3[i] & (1<<j)) != 0) {
3840 la1tokens[96+j] = true;
3841 }
3842 }
3843 }
3844 }
3845 for (int i = 0; i < 116; i++) {
3846 if (la1tokens[i]) {
3847 jj_expentry = new int[1];
3848 jj_expentry[0] = i;
3849 jj_expentries.addElement(jj_expentry);
3850 }
3851 }
3852 jj_endpos = 0;
3853 jj_rescan_token();
3854 jj_add_error_token(0, 0);
3855 int[][] exptokseq = new int[jj_expentries.size()][];
3856 for (int i = 0; i < jj_expentries.size(); i++) {
3857 exptokseq[i] = jj_expentries.elementAt(i);
3858 }
3859 return new ParseException(token, exptokseq, tokenImage);
3860 }
3861
3862 final public void enable_tracing() {
3863 }
3864
3865 final public void disable_tracing() {
3866 }
3867
3868 final private void jj_rescan_token() {
3869 jj_rescan = true;
3870 for (int i = 0; i < 9; i++) {
3871 JJExpressionParserCalls p = jj_2_rtns[i];
3872 do {
3873 if (p.gen > jj_gen) {
3874 jj_la = p.arg;
3875 jj_lastpos = jj_scanpos = p.first;
3876 switch (i) {
3877 case 0:
3878 jj_3_1();
3879 break;
3880 case 1:
3881 jj_3_2();
3882 break;
3883 case 2:
3884 jj_3_3();
3885 break;
3886 case 3:
3887 jj_3_4();
3888 break;
3889 case 4:
3890 jj_3_5();
3891 break;
3892 case 5:
3893 jj_3_6();
3894 break;
3895 case 6:
3896 jj_3_7();
3897 break;
3898 case 7:
3899 jj_3_8();
3900 break;
3901 case 8:
3902 jj_3_9();
3903 break;
3904 }
3905 }
3906 p = p.next;
3907 } while (p != null);
3908 }
3909 jj_rescan = false;
3910 }
3911
3912 final private void jj_save(int index, int xla) {
3913 JJExpressionParserCalls p = jj_2_rtns[index];
3914 while (p.gen > jj_gen) {
3915 if (p.next == null) {
3916 p = p.next = new JJExpressionParserCalls();
3917 break;
3918 }
3919 p = p.next;
3920 }
3921 p.gen = jj_gen + xla - jj_la;
3922 p.first = token;
3923 p.arg = xla;
3924 }
3925
3926 }
3927
3928 final class JJExpressionParserCalls {
3929 int gen;
3930 Token first;
3931 int arg;
3932 JJExpressionParserCalls next;
3933 }